/* 
 * File:   Config.h
 * Author: Bram
 *
 * Created on January 18, 2013, 9:11 PM
 */

#ifndef CONFIG_H
#define	CONFIG_H

#include "logger.h"
#include <unistd.h>

using namespace std;

class Config {
private:
	static Config* instance;
        string _serverName;
        string _serverVersion;
        string _serverAbout;
        string _baseCommand;
        
//statusType.erase(std::remove_if(statusType.begin(), statusType.end(), isspace), statusType.end());
public:
	Config(void);
	~Config(void);
	static Config *getInstance()
	{
		if (!instance){
                    instance = new Config();
                }
			
		return instance;
	}
        void loadDefaults();
        void getFullBasePath(string&);
        
        const string& getServerName();
        const string& getServerVersion();
        const string& getServerAbout();
        const string& getBaseCommand();
        
public:
    string PathSeparator;
    string CurrentDir;
    string BaseFolderName;
    string EmptyXMLNodeRepresenter;
    string NotExistsRepresenter;
    string OkRepresenter;
    
    
};

#endif	/* CONFIG_H */

